package model

import (
	"gorm.io/gorm"
	"time"
)

type User struct {
	Id         uint           `gorm:"column:id;type:bigint(20) UNSIGNED;primaryKey;not null;" json:"id"`
	Name       string         `gorm:"column:name;type:varchar(255);comment:昵称;not null;" json:"name"`                                               // 昵称
	Sex        uint           `gorm:"column:sex;type:bigint(20) UNSIGNED;comment:性别 1:男2:女;not null;default:1;" json:"sex"`                       // 性别 1:男2:女
	Gift       string         `gorm:"column:gift;type:varchar(255);comment:礼物;not null;" json:"gift"`                                               // 礼物
	JoinTime   string         `gorm:"column:join_time;type:varchar(255);comment:进入房间时间;not null;" json:"join_time"`                             // 进入房间时间
	OutTime    string         `gorm:"column:out_time;type:varchar(255);comment:退出房间时间;not null;" json:"out_time"`                               // 退出房间时间
	Num        uint           `gorm:"column:num;type:bigint(20) UNSIGNED;comment:累计时长;not null;default:0;" json:"num"`                            // 累计时长
	CreateTime time.Time      `gorm:"column:create_time;type:datetime(3);comment:创建时间;not null;default:CURRENT_TIMESTAMP(3);" json:"create_time"` // 创建时间
	UpdateTime time.Time      `gorm:"column:update_time;type:datetime(3);comment:更新时间;not null;default:CURRENT_TIMESTAMP(3);" json:"update_time"` // 更新时间
	DeleteTime gorm.DeletedAt `gorm:"column:delete_time;type:datetime(3);comment:删除时间;default:NULL;" json:"delete_time"`                          // 删除时间
}

func (u *User) TableName() string {
	return "user"
}
